Device drivers within operating systems are often written to support multiple device variants. This is especially true for drivers of virtual devices that change and gain features frequently. A typical device driver would need to support a wide range of devices using different feature sets, or even a mix of devices with different feature sets. This results in multiple conditional branches in driver executable code, which can slow down execution of the code.